Home > CS3560: Object-Oriented Design and Programming > Foundation for Systems DesignFoundation for Systems Design
\text{Analysis (Analysis Models and Documents)} \to \text{Design (Design Models and Documents)} \to \text{Implementation}
Design is a model-building activity.
Remember: Jumping to programming without design often causes less than optimum solution and may require rework.
Requirements Models:
Design Models:
Design Activities:
More on Application Components: Issues packaging components
- Scope and size: What are the functions, boundaries, and interfaces?
- Programming Language: What are the accepted languages?
- Build of Buy: Is an acceptable version available to purchase?
More on Application Components: Typical models for designing application components
- Package Diagram
- Component Diagram
- Deployment Diagram
More on UI: Typical models for designing UI
- Storyboard
- System sequence diagram
- Small screen menu prototype
More on Database: Relational Database Management Systems (RDBMS)
- Current tech frequently uses RDBMS.
- Requires converting the data model to a relational database.
- Must address:
- Throughput and response time
- Security.
More on Database: Example — Typical Table Definition as Part of Database Scheme
Field Type Collation Attributed Null Default Extra productItem varchar(15) latin1_swedith_ci No None inventoryItem mediumint(9) No None size varchar(8) latin1_swedith_ci No None color varchar(10) latin1_swedith_ci No None options varchar(12) latin1_swedith_ci No None quantityOnHand mediumint(9) No None averageCost decimal(8,2) No None reorderQuantity mediumint(9) No None dateLastOrder date No None dateLastShipment date No None
Integrity Controls: Maintain integrity inf inputs, outputs, and data and programs.
Security Controls: Protect the assets form threats, internal and external.
Prevent invalid or erroneous data from entering the system.
Value Limit Controls: Check the range of inputs for reasonableness
Completeness Controls: Ensure all the data has been entered
Data Validation Controls: Ensure that specific data values are correct
Field Combination Controls: Ensure data is correct based on relationships between fields.
Important for ensuring that output arrives at proper destination and is accurate, current, and complete.
Examples:
- Physical access to printers and display devices.
- Protection from “dumpsite diving” discarded data
- Labels on printed and electronic output to identity source of data.
Goal: Protect data and systems from catastrophes.
Goal: Protect all assets against external threats.
Access Controls: Limit a person’s ability to access servers, files, data, and applications.
Registered Users: Those with authorization.
Unauthorized Users: Anyone not registered
Privileged Users: Those that maintain lists and systems.
Encryption: Alter data to make it unrecognizable.
Decryption: Convert encrypted data back to readable format.
Encryption Algorithm: Mathematical transformation of the data.
Encryption Key: Lone data string that allows the same algorithm to produce unique encryptions.
Symmetric: Uses same key to encrypt and decrypt
Asymmetric: Uses different keys to encrypt and decrypt.
Secure Sockets Layer (SSL): Standard set of protocols for authentication and authorization
Transport Layer Security (TLS): Internet standard equivalent to SSL.
IP Security (IPSec): Internet security protocol at a low-level transmission.
Hypertext Transfer Protocol Secure (HTTPS): Internet standard to transmit Web pages.